# -*- coding: utf-8 -*-
from django.db import models
from apps.perfil.models import Empresario

class ClienteManager(models.Manager):
    
    def get_clientes_activos(self, usuario):
        return self.filter(usuario=usuario, activo=1)
    ############################################################################    
    def get_clientes_inactivos(self, usuario):
        return self.filter(usuario=usuario, activo=0)
    ############################################################################     
    def set_codigo(self, usuario):
        empresario = Empresario.objects.get(user__exact=usuario)
        codigo_cliente = 0        
        try:
            cliente = self.filter(usuario=usuario, activo=1).latest()
            codigo_cliente = cliente.codigo + 1
        except:
            cod  = u'%d%d%d' %(empresario.cod_empresario, usuario.id, 1)
            codigo_cliente = int(cod)       
        return codigo_cliente
    ############################################################################
    def get_datos_cliente(self, cod_cliente):
        try:
            cliente = self.get(codigo__exact=cod_cliente)
            return cliente          
        except:
            return None
    ############################################################################
    def desactivar_cliente(self, cod_cliente):
        self.filter(codigo=cod_cliente, activo=1).update(activo=0)
    ############################################################################
    def activar_cliente(self, cod_cliente):
        self.filter(codigo=cod_cliente, activo=0).update(activo=1)